<!DOCTYPE HTML>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"></meta>
  <title>WebSocket test</title>
  <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
  <script type="text/javascript" src="websocket_helpers.js"></script>
  <script type="text/javascript" src="websocket_tests.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body onload="testWebSocket()">
<script class="testbody" type="text/javascript">

var tests = [
  test1,  // client tries to connect to a http scheme location;
  test2,  // assure serialization of the connections;
  test3,  // client tries to connect to an non-existent ws server;
  test4,  // client tries to connect using a relative url;
  test5,  // client uses an invalid protocol value;
  test6,  // counter and encoding check;
  test7,  // onmessage event origin property check
  test8,  // client calls close() and the server sends the close frame (with no
          // code or reason) in acknowledgement;
  test9,  // client closes the connection before the ws connection is established;
  test10, // client sends a message before the ws connection is established;
];

function testWebSocket() {
  doTest();
}

SimpleTest.requestFlakyTimeout("The web socket tests are really fragile, but avoiding timeouts might be hard, since it's testing stuff on the network. " +
                               "Expect all sorts of flakiness in this test...");
SimpleTest.waitForExplicitFinish();

</script>

<div id="feedback">
</div>

</body>
</html>
